﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DeviceEntity.Fct.MxPcb.BLL
{
    /// <summary>
    /// FCT3.0板卡
    /// </summary>
    public interface IMxPcbBLL
    {
        /// <summary>
        /// 继电器控制
        /// </summary>
        /// <param name="fct3Parameter">控制参数</param>
        /// <returns></returns>
        Task RelayControl(Model.MxPcbParaModel fct3Parameter);
        /// <summary>
        /// AD采集/隔离电压采集/差分电压采集
        /// </summary>
        /// <param name="fct3Parameter">采集参数</param>
        /// <returns></returns>
        Task ADCollect(Model.MxPcbParaModel fct3Parameter);
        /// <summary>
        /// 电气控制
        /// </summary>
        /// <param name="fct3Parameter">控制参数</param>
        /// <returns></returns>
        Task ElectricalControl(Model.MxPcbParaModel fct3Parameter);
        /// <summary>
        /// 隔离光耦频率采集/频率采集
        /// </summary>
        /// <param name="fct3Parameter">采集参数</param>
        /// <returns></returns>
        Task FrequencyCollect(Model.MxPcbParaModel fct3Parameter);
        /// <summary>
        /// 电平采集
        /// </summary>
        /// <param name="fct3Parameter">采集参数</param>
        /// <returns></returns>
        Task VolLevelCollect(Model.MxPcbParaModel fct3Parameter);
        /// <summary>
        /// 电平输出
        /// </summary>
        /// <param name="fct3Parameter">输出参数</param>
        /// <returns></returns>
        Task VolLevelOutput(Model.MxPcbParaModel fct3Parameter);
        /// <summary>
        /// 通断检测
        /// </summary>
        /// <param name="fct3Parameter">检测参数</param>
        /// <returns></returns>
        Task OnOffCheck(Model.MxPcbParaModel fct3Parameter);
        /// <summary>
        /// LED灯检测
        /// </summary>
        /// <param name="fct3Parameter">检测参数</param>
        /// <returns></returns>
        Task LedCheck(Model.MxPcbParaModel fct3Parameter);
    }
}
